The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
A block device typically operates as a uni-directional device using a block device protocol. More particularly, an initiator device sends a command to a target device and the target device simply responds to the command. The block device protocol assumes that only the initiator device initiates the commands. For example only, a host computer may operate as the initiator device and a hard disk drive or a solid state drive may operate as a target device using a block device protocol. In this example, the block device protocol may include a small computer serial interface (SCSI). In contrast, hard disk drives and solid state drives may also operate as bi-directional, client-server devices when more sophisticated interfaces are used, such as a Peripheral Component Interconnect Express (PCIe) interface.
In the foregoing example, the initiator device typically sends commands to the target device using the block device protocol to read data from or write data to the hard disk drive or the solid state drive associated with the target device. The target device is not capable of sending commands back to the initiator device. However, the target device may be able to send status responses to the initiator device in response to the commands.